package items;

import java.util.ArrayList;
//DE AQUI ES DONDE TENGO QUE SACAR LOS PRODUCTOS PARA METERLO EN PEDIDO
public class ContenedordeCompra {
	private ArrayList<ItemCompra> _itemCompra;
	
	
	public ContenedordeCompra(){
		_itemCompra= new ArrayList<ItemCompra>();
	}
	
	public ItemCompra buscarItemCompra(int idbuscado){
		boolean encontrado=false;
		ItemCompra item=null;
		int i=0;
		int totalItems= _itemCompra.size();
		while(i<totalItems&&!encontrado){
			item= _itemCompra.get(i);
			if(item.getItem().igualAlElemento(idbuscado))
				encontrado=true;
		   i++;		   
		}
		if(encontrado)
			return item;
		else return null;
	}
	

	public void anadirCompra(Item item,int cantidad){
		ItemCompra unItem= buscarItemCompra(item.getID());
		if(unItem==null){
			ItemCompra nuevoItem= new ItemCompra(item, cantidad);
			_itemCompra.add(nuevoItem);
		}else{
			unItem.cambiarCantidadsolicitada(unItem.getCantidadItem()+cantidad);
		}
	}
	
	public void borrarItemCompra(ItemCompra unItem){
		ItemCompra item=null;
		boolean encontrado=false;
		int i=0;
		int indice= _itemCompra.size();
		
		while(i<indice&&!encontrado){
			item= _itemCompra.get(i);
			if(item.igualAItem(unItem))
				encontrado=true;
			i++;
		}
		if(encontrado)
			_itemCompra.remove(item);
	}
	
	public ArrayList<ItemCompra> darListaCompra(){
		return _itemCompra;
	}
	
//calcular el total de la compra de los productos	
	public double calcularValorTotalCompra(){
		double total=0;
		int indice=0;
		int totalItem=_itemCompra.size();
		while(indice<totalItem){
			ItemCompra itemActual= _itemCompra.get(indice);
			total+=itemActual.calcularSubtotalItem();
			indice++;
		}
		return total;
	}
	
	
	
}
